﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace InterValometer
{

    class Target
    {
        public Target()
        {
            this.UID = -1;
            this.Name = "";
            this.RightAscensionHours = 0;
            this.RightAscensionMinutes = 0;
            this.RightAscensionSeconds = 0;
            this.DeclinationDegrees = 0;
            this.DeclinationMinutes = 0;
            this.DeclinationSeconds = 0;
        }

        public Target(int tar_uid, string tar_nam, int tar_ra_hrs, int tar_ra_min, decimal tar_ra_sec,
            int tar_dec_deg, int tar_dec_min, decimal tar_dec_sec)
        {
            this.UID = tar_uid;
            this.Name = tar_nam;
            this.RightAscensionHours = tar_ra_hrs;
            this.RightAscensionMinutes = tar_ra_min;
            this.RightAscensionSeconds = tar_ra_sec;
            this.DeclinationDegrees = tar_dec_deg;
            this.DeclinationMinutes = tar_dec_min;
            this.DeclinationSeconds = tar_dec_sec;
        }

        public override string ToString()
        {
            string output = "UID=" + this.UID + ", Name=" + this.Name + ", RA Hours=" + this.RightAscensionHours + ", RA Minutes=" + this.RightAscensionMinutes;
            output += ", RA Seconds=" + this.RightAscensionSeconds + ", Dec Degrees=" + this.DeclinationDegrees + ", Dec Minutes=" + this.DeclinationMinutes + ", RA Seconds=" + this.DeclinationSeconds;

            return output;
        }

        public int UID { get; set; }
        public string Name { get; set; }
        public int RightAscensionHours { get; set; }
        public int RightAscensionMinutes { get; set; }
        public decimal RightAscensionSeconds { get; set; }
        public int DeclinationDegrees { get; set; }
        public int DeclinationMinutes { get; set; }
        public decimal DeclinationSeconds { get; set; }
    }
}
